package com.sc.nft.entity.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.sc.nft.enums.AcutionParticipationTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author 朱梦晨
 * @Description:
 * @date 2024-09-07
 */
@Data
public class DigitalCollectionProductInfoAuctionDTO {

    @ApiModelProperty(value = "商品id")
    //@NotNull(message = "商品id不能为空")
    private Long productId;

    @ApiModelProperty(value = "参与门槛类型")
    private AcutionParticipationTypeEnum participationType;

    @ApiModelProperty(value = "标的物价格")
    @NotNull(message = "标的物价格不能为空")
    private BigDecimal auctionPrice;

    @ApiModelProperty(value = "标的物数量")
    @NotNull(message = "标的物数量不能为空")
    private Integer auctionNum;

    @ApiModelProperty(value = "参与藏品最低参与数量")
    @NotNull(message = "参与藏品最低参与数量不能为空")
    private Integer consumptionNum;

//    @ApiModelProperty(value = "是否生成拍卖结果")
//    private Boolean haveResult;

    @ApiModelProperty(value = "拍卖开始时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @NotNull(message = "开始时间不能为空")
    private Date auctionStartTime;

    @ApiModelProperty(value = "拍卖结束时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @NotNull(message = "结束时间不能为空")
    private Date auctionEndTime;

    @ApiModelProperty(value = "规则展示图")
    private String ruleImg;

    /**
     * 抢购时间
     */
    @ApiModelProperty(value = "抢购时间")
    private Date beginTime;
    /**
     * 结束时间
     */
    @ApiModelProperty(value = "结束时间")
    private Date endTime;
}
